package com.hanhai.material.wages.entity;

import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.RelationOneToMany;
import com.mybatisflex.annotation.Table;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.util.Date;

import java.util.List;

import jdk.nashorn.internal.ir.annotations.Ignore;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 *  实体类。
 *
 * @author youchuang
 * @since 2023/10/25 17:34:51
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Table(value = "attendance_result_report")
public class AttendanceResultReport implements Serializable {

    @Id
    private String id;

    private String fullname;

    private String userid;

    private String jobno;

    private String dept;

    private String salarycategory;

    private String position;

    private String cid;

    private String offerchannel;

    private BigDecimal basicattendance;

    private BigDecimal basicovertime;

    private BigDecimal continuousshifthours;

    private BigDecimal overtime;

    private BigDecimal totalduration;

    private LocalDate attendancedate;

    private String week;

    private String rosteringtype;

    private String rosteringclass;

    private String salaryrosteringtype;

    private String salaryrosteringclass;

    private String tagName;

    private String subType;

    private BigDecimal tagtime;

    private String shift;

    private String createuserid;

    private Date createtime;

    private String updateuserid;

    private Date updatetime;

    private String summary;

    private Date onduty;

    private Date offduty;

    private Long groupid;

    private String powertype;
//    @RelationOneToMany(selfField = "userid",targetField = "userId",extraCondition = "work_date= :workDate")
    @Column(ignore = true)
    private List<DingAttendanceResult> dingAttendanceResultList;

    @Column(ignore = true)
    private LocalDate startDate;
    @Column(ignore = true)
    private LocalDate endDate;

}
